#include <iostream>
#include <string>
#include <map>
#include <vector>

// Функция для проверки, является ли число простым
bool isPrime(int number) {
    if (number <= 1) return false;
    if (number == 2 || number == 3) return true;

    if (number % 2 == 0 || number % 3 == 0) return false;

    for (int i = 5; i * i <= number; i += 6) {
        if (number % i == 0 || number % (i + 2) == 0) return false;
    }
    return true;
}

// Функция для нахождения ближайшего простого числа
int findClosestPrime(int number) {
    // Проверяем, является ли само число простым
    if (isPrime(number)) return number;

    int lower = number - 1;
    int upper = number + 1;

    // Ищем ближайшие простые числа с обеих сторон
    while (true) {
        if (lower > 1 && isPrime(lower)) return lower;
        if (isPrime(upper)) return upper;
        lower--;
        upper++;
    }
}

int main() {
    std::map<std::string, int> wordsToNumbers = {
        {"zero", 0}, {"one", 1}, {"two", 2}, {"three", 3}, {"four", 4},
        {"five", 5}, {"six", 6}, {"seven", 7}, {"eight", 8}, {"nine", 9}
    };

    std::string word;
    int number = 0;

    // Читаем три слова и преобразуем их в число
    for (int i = 0; i < 3; ++i) {
        std::cin >> word;
        number = number * 10 + wordsToNumbers[word];
    }

    // Находим и выводим ближайшее простое число
    std::cout << findClosestPrime(number) << std::endl;

    return 0;
}
